package xyz.lwm.lazycat.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @author lwm
 */
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD)
public @interface Value {

    /**
     * 1. 直接赋值:
     * <pre>{@code
     *      @Value("hello")
     *      private String msg;
     * }</pre>
     *
     * 2. 占位符:
     * <pre>{@code
     *      @Value("${app.name:myName}")
     *      private String appName;
     * }</pre>
     *
     * 3. 表达式: todo
     */
    String value();

}
